<?php
/**
 * 合同管理模块路由配置
 */

use think\facade\Route;

// 合同管理模块路由 - 规范化路由格式：api/contract/资源名称/操作
Route::group('api/contract', function () {
    // 合同资源
    Route::group('/contract', function () {
        Route::get('/list', 'contract.Contract/list');          // 查看合同列表
        Route::get('/datalist', 'contract.Contract/list');      // 查看合同列表（兼容前端API调用）
        Route::get('/view', 'contract.Contract/view');          // 查看单个合同
        Route::post('/add', 'contract.Contract/add');           // 新建合同
        Route::put('/edit', 'contract.Contract/edit');          // 编辑合同
        Route::delete('/del', 'contract.Contract/del');         // 删除合同（软删除）
        Route::get('/archive_list', 'contract.Contract/archive_list'); // 归档合同列表
        Route::get('/stop_list', 'contract.Contract/stop_list'); // 中止合同列表
        Route::get('/void_list', 'contract.Contract/void_list'); // 作废合同列表
        Route::post('/archive', 'contract.Contract/archive');   // 合同归档
        Route::post('/stop', 'contract.Contract/stop');         // 合同中止
        Route::post('/void', 'contract.Contract/void');         // 合同作废
        Route::get('/get_sign_users', 'contract.Contract/get_sign_users'); // 获取签约人列表（用于远程搜索）
        Route::post('/create_case_from_contract', 'contract.Contract/create_case_from_contract'); // 从合同直接创建案件
    });

    // 合同分类资源
    Route::group('/cate', function () {
        Route::get('/list', 'contract.Cate/list');              // 查看合同分类列表
        Route::get('/view', 'contract.Cate/view');              // 查看单个合同分类
        Route::post('/add', 'contract.Cate/add');               // 新建合同分类
        Route::put('/edit', 'contract.Cate/edit');              // 编辑合同分类
        Route::delete('/del', 'contract.Cate/del');             // 删除合同分类（软删除）
        Route::get('/set', 'contract.Cate/set');                // 设置合同分类（获取启用的分类列表）
    });

    // 合同模型资源（注释掉无效的路由配置）
    // Route::group('/models', function () {
    //     Route::get('/list', 'contract.ContractModelController/list');          // 查看合同列表
    //     Route::get('/view', 'contract.ContractModelController/view');          // 查看单个合同
    //     Route::post('/add', 'contract.ContractModelController/add');           // 新建合同
    //     Route::put('/edit', 'contract.ContractModelController/edit');          // 编辑合同
    //     Route::delete('/del', 'contract.ContractModelController/del');         // 删除合同（软删除）
    //     Route::get('/archive_list', 'contract.ContractModelController/archive_list'); // 归档合同列表
    //     Route::get('/stop_list', 'contract.ContractModelController/stop_list'); // 中止合同列表
    //     Route::get('/void_list', 'contract.ContractModelController/void_list'); // 作废合同列表
    //     Route::post('/archive', 'contract.ContractModelController/archive');   // 合同归档
    //     Route::post('/stop', 'contract.ContractModelController/stop');         // 合同中止
    //     Route::post('/void', 'contract.ContractModelController/void');         // 合同作废
    //     Route::post('/process_approval', 'contract.ContractModelController/processApproval'); // 处理合同审批
    //     Route::get('/approval_list', 'contract.ContractModelController/approvalList'); // 获取合同审批列表
    //     Route::post('/create_case_from_contract', 'contract.ContractModelController/create_case_from_contract'); // 从合同直接创建案件
    // });
});

// 【已规范化 - 2025-09-01】 所有路由已添加/api前缀，并统一了路由结构